package cn.edu.gxu.oas.module.run.controller.admin.record.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "管理后台 - 跑步记录 Response VO")
@Data
@ExcelIgnoreUnannotated
public class RecordRespVO {

    @Schema(description = "记录ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7184")
    @ExcelProperty("记录ID")
    private Long id;

    @Schema(description = "学生ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "13561")
    @ExcelProperty("学生ID")
    private Long studentId;

    @Schema(description = "开始时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("开始时间")
    private LocalDateTime startTime;

    @Schema(description = "结束时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("结束时间")
    private LocalDateTime endTime;

    @Schema(description = "持续时间(秒)", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("持续时间(秒)")
    private Integer duration;

    @Schema(description = "跑步距离(km)", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("跑步距离(km)")
    private BigDecimal distance;

    @Schema(description = "配速(分钟/公里)")
    @ExcelProperty("配速(分钟/公里)")
    private String pace;

    @Schema(description = "消耗卡路里(kcal)")
    @ExcelProperty("消耗卡路里(kcal)")
    private Integer calorie;

    @Schema(description = "获得积分", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("获得积分")
    private Integer points;

    @Schema(description = "路线数据(JSON格式)")
    @ExcelProperty("路线数据(JSON格式)")
    private String routeData;

    @Schema(description = "状态(0-有效，1-无效)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @ExcelProperty("状态(0-有效，1-无效)")
    private Integer status;

    @Schema(description = "备注", example = "随便")
    @ExcelProperty("备注")
    private String remark;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

}